package klex.eserver.dao.systemmanager.system;

import java.util.List;

import klex.eserver.entity.OnlineClientAccount;
import klex.eserver.javabean.AccountBean;

/**
 * 账户dao
 * @author 汤葵
 *
 */
public interface AccountDao {
	
	/**
	 * 新增账户数据
	 * @param account
	 * @return
	 */
	public Integer addAccount(OnlineClientAccount account);
	
	/**
	 * 根据账户id删除账户信息(删除单个对象)
	 * @param accountNumber
	 * @return
	 */
	public Integer delAccount(String cuNumber);
	
	/**
	 * 批量删除账户 
	 * @param sql 代入一条删除 sql语句（删除多个对象）
	 * @return
	 */
	public Integer delAllAccount(String sql);
	
	/**
	 * 修改账户信息（单个对象）
	 * @param account
	 */
	public void updateAccount(OnlineClientAccount account);
	
	/**
	 * 批量修改账户信息
	 * @param sql 代入一条修改sql语句
	 * @return
	 */
	public Integer updateAllAccount(String sql);
	
	/**
	 * 根据账户id查询一个对象
	 * @param accountNumber
	 * @return
	 */
	public OnlineClientAccount getAccountByNumber(String accountNumber);
	
	/**
	 * 查询账户表全部信息
	 * @return
	 */
	public List<AccountBean>  findAllAccount();
	
	/**
	 * 组合查询，根据条件查询账户信息
	 * @param accountBean
	 * @return
	 */
	public List<AccountBean>  findAcountAll(OnlineClientAccount account);
	
	/**
	 * 根据分公司获取所属账号信息
	 * @param companyNum
	 * @return
	 */
	public List<OnlineClientAccount> findAccountListByCompanyNum(String companyNum);
}
